package com.desksoft.ecommerce.entity.logistics.dto;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class SuppitemExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public SuppitemExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andItemcodeIsNull() {
            addCriterion("ItemCode is null");
            return (Criteria) this;
        }

        public Criteria andItemcodeIsNotNull() {
            addCriterion("ItemCode is not null");
            return (Criteria) this;
        }

        public Criteria andItemcodeEqualTo(String value) {
            addCriterion("ItemCode =", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeNotEqualTo(String value) {
            addCriterion("ItemCode <>", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeGreaterThan(String value) {
            addCriterion("ItemCode >", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeGreaterThanOrEqualTo(String value) {
            addCriterion("ItemCode >=", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeLessThan(String value) {
            addCriterion("ItemCode <", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeLessThanOrEqualTo(String value) {
            addCriterion("ItemCode <=", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeLike(String value) {
            addCriterion("ItemCode like", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeNotLike(String value) {
            addCriterion("ItemCode not like", value, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeIn(List<String> values) {
            addCriterion("ItemCode in", values, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeNotIn(List<String> values) {
            addCriterion("ItemCode not in", values, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeBetween(String value1, String value2) {
            addCriterion("ItemCode between", value1, value2, "itemcode");
            return (Criteria) this;
        }

        public Criteria andItemcodeNotBetween(String value1, String value2) {
            addCriterion("ItemCode not between", value1, value2, "itemcode");
            return (Criteria) this;
        }

        public Criteria andVendorcodeIsNull() {
            addCriterion("VendorCode is null");
            return (Criteria) this;
        }

        public Criteria andVendorcodeIsNotNull() {
            addCriterion("VendorCode is not null");
            return (Criteria) this;
        }

        public Criteria andVendorcodeEqualTo(String value) {
            addCriterion("VendorCode =", value, "vendorcode");
            return (Criteria) this;
        }

        public Criteria andVendorcodeNotEqualTo(String value) {
            addCriterion("VendorCode <>", value, "vendorcode");
            return (Criteria) this;
        }

        public Criteria andVendorcodeGreaterThan(String value) {
            addCriterion("VendorCode >", value, "vendorcode");
            return (Criteria) this;
        }

        public Criteria andVendorcodeGreaterThanOrEqualTo(String value) {
            addCriterion("VendorCode >=", value, "vendorcode");
            return (Criteria) this;
        }

        public Criteria andVendorcodeLessThan(String value) {
            addCriterion("VendorCode <", value, "vendorcode");
            return (Criteria) this;
        }

        public Criteria andVendorcodeLessThanOrEqualTo(String value) {
            addCriterion("VendorCode <=", value, "vendorcode");
            return (Criteria) this;
        }

        public Criteria andVendorcodeLike(String value) {
            addCriterion("VendorCode like", value, "vendorcode");
            return (Criteria) this;
        }

        public Criteria andVendorcodeNotLike(String value) {
            addCriterion("VendorCode not like", value, "vendorcode");
            return (Criteria) this;
        }

        public Criteria andVendorcodeIn(List<String> values) {
            addCriterion("VendorCode in", values, "vendorcode");
            return (Criteria) this;
        }

        public Criteria andVendorcodeNotIn(List<String> values) {
            addCriterion("VendorCode not in", values, "vendorcode");
            return (Criteria) this;
        }

        public Criteria andVendorcodeBetween(String value1, String value2) {
            addCriterion("VendorCode between", value1, value2, "vendorcode");
            return (Criteria) this;
        }

        public Criteria andVendorcodeNotBetween(String value1, String value2) {
            addCriterion("VendorCode not between", value1, value2, "vendorcode");
            return (Criteria) this;
        }

        public Criteria andNormpurpriIsNull() {
            addCriterion("NormPurPri is null");
            return (Criteria) this;
        }

        public Criteria andNormpurpriIsNotNull() {
            addCriterion("NormPurPri is not null");
            return (Criteria) this;
        }

        public Criteria andNormpurpriEqualTo(BigDecimal value) {
            addCriterion("NormPurPri =", value, "normpurpri");
            return (Criteria) this;
        }

        public Criteria andNormpurpriNotEqualTo(BigDecimal value) {
            addCriterion("NormPurPri <>", value, "normpurpri");
            return (Criteria) this;
        }

        public Criteria andNormpurpriGreaterThan(BigDecimal value) {
            addCriterion("NormPurPri >", value, "normpurpri");
            return (Criteria) this;
        }

        public Criteria andNormpurpriGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("NormPurPri >=", value, "normpurpri");
            return (Criteria) this;
        }

        public Criteria andNormpurpriLessThan(BigDecimal value) {
            addCriterion("NormPurPri <", value, "normpurpri");
            return (Criteria) this;
        }

        public Criteria andNormpurpriLessThanOrEqualTo(BigDecimal value) {
            addCriterion("NormPurPri <=", value, "normpurpri");
            return (Criteria) this;
        }

        public Criteria andNormpurpriIn(List<BigDecimal> values) {
            addCriterion("NormPurPri in", values, "normpurpri");
            return (Criteria) this;
        }

        public Criteria andNormpurpriNotIn(List<BigDecimal> values) {
            addCriterion("NormPurPri not in", values, "normpurpri");
            return (Criteria) this;
        }

        public Criteria andNormpurpriBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("NormPurPri between", value1, value2, "normpurpri");
            return (Criteria) this;
        }

        public Criteria andNormpurpriNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("NormPurPri not between", value1, value2, "normpurpri");
            return (Criteria) this;
        }

        public Criteria andPrompurpriIsNull() {
            addCriterion("PromPurPri is null");
            return (Criteria) this;
        }

        public Criteria andPrompurpriIsNotNull() {
            addCriterion("PromPurPri is not null");
            return (Criteria) this;
        }

        public Criteria andPrompurpriEqualTo(BigDecimal value) {
            addCriterion("PromPurPri =", value, "prompurpri");
            return (Criteria) this;
        }

        public Criteria andPrompurpriNotEqualTo(BigDecimal value) {
            addCriterion("PromPurPri <>", value, "prompurpri");
            return (Criteria) this;
        }

        public Criteria andPrompurpriGreaterThan(BigDecimal value) {
            addCriterion("PromPurPri >", value, "prompurpri");
            return (Criteria) this;
        }

        public Criteria andPrompurpriGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("PromPurPri >=", value, "prompurpri");
            return (Criteria) this;
        }

        public Criteria andPrompurpriLessThan(BigDecimal value) {
            addCriterion("PromPurPri <", value, "prompurpri");
            return (Criteria) this;
        }

        public Criteria andPrompurpriLessThanOrEqualTo(BigDecimal value) {
            addCriterion("PromPurPri <=", value, "prompurpri");
            return (Criteria) this;
        }

        public Criteria andPrompurpriIn(List<BigDecimal> values) {
            addCriterion("PromPurPri in", values, "prompurpri");
            return (Criteria) this;
        }

        public Criteria andPrompurpriNotIn(List<BigDecimal> values) {
            addCriterion("PromPurPri not in", values, "prompurpri");
            return (Criteria) this;
        }

        public Criteria andPrompurpriBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("PromPurPri between", value1, value2, "prompurpri");
            return (Criteria) this;
        }

        public Criteria andPrompurpriNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("PromPurPri not between", value1, value2, "prompurpri");
            return (Criteria) this;
        }

        public Criteria andNetnormpurIsNull() {
            addCriterion("NetNormPur is null");
            return (Criteria) this;
        }

        public Criteria andNetnormpurIsNotNull() {
            addCriterion("NetNormPur is not null");
            return (Criteria) this;
        }

        public Criteria andNetnormpurEqualTo(BigDecimal value) {
            addCriterion("NetNormPur =", value, "netnormpur");
            return (Criteria) this;
        }

        public Criteria andNetnormpurNotEqualTo(BigDecimal value) {
            addCriterion("NetNormPur <>", value, "netnormpur");
            return (Criteria) this;
        }

        public Criteria andNetnormpurGreaterThan(BigDecimal value) {
            addCriterion("NetNormPur >", value, "netnormpur");
            return (Criteria) this;
        }

        public Criteria andNetnormpurGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("NetNormPur >=", value, "netnormpur");
            return (Criteria) this;
        }

        public Criteria andNetnormpurLessThan(BigDecimal value) {
            addCriterion("NetNormPur <", value, "netnormpur");
            return (Criteria) this;
        }

        public Criteria andNetnormpurLessThanOrEqualTo(BigDecimal value) {
            addCriterion("NetNormPur <=", value, "netnormpur");
            return (Criteria) this;
        }

        public Criteria andNetnormpurIn(List<BigDecimal> values) {
            addCriterion("NetNormPur in", values, "netnormpur");
            return (Criteria) this;
        }

        public Criteria andNetnormpurNotIn(List<BigDecimal> values) {
            addCriterion("NetNormPur not in", values, "netnormpur");
            return (Criteria) this;
        }

        public Criteria andNetnormpurBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("NetNormPur between", value1, value2, "netnormpur");
            return (Criteria) this;
        }

        public Criteria andNetnormpurNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("NetNormPur not between", value1, value2, "netnormpur");
            return (Criteria) this;
        }

        public Criteria andNetprompurIsNull() {
            addCriterion("NetPromPur is null");
            return (Criteria) this;
        }

        public Criteria andNetprompurIsNotNull() {
            addCriterion("NetPromPur is not null");
            return (Criteria) this;
        }

        public Criteria andNetprompurEqualTo(BigDecimal value) {
            addCriterion("NetPromPur =", value, "netprompur");
            return (Criteria) this;
        }

        public Criteria andNetprompurNotEqualTo(BigDecimal value) {
            addCriterion("NetPromPur <>", value, "netprompur");
            return (Criteria) this;
        }

        public Criteria andNetprompurGreaterThan(BigDecimal value) {
            addCriterion("NetPromPur >", value, "netprompur");
            return (Criteria) this;
        }

        public Criteria andNetprompurGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("NetPromPur >=", value, "netprompur");
            return (Criteria) this;
        }

        public Criteria andNetprompurLessThan(BigDecimal value) {
            addCriterion("NetPromPur <", value, "netprompur");
            return (Criteria) this;
        }

        public Criteria andNetprompurLessThanOrEqualTo(BigDecimal value) {
            addCriterion("NetPromPur <=", value, "netprompur");
            return (Criteria) this;
        }

        public Criteria andNetprompurIn(List<BigDecimal> values) {
            addCriterion("NetPromPur in", values, "netprompur");
            return (Criteria) this;
        }

        public Criteria andNetprompurNotIn(List<BigDecimal> values) {
            addCriterion("NetPromPur not in", values, "netprompur");
            return (Criteria) this;
        }

        public Criteria andNetprompurBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("NetPromPur between", value1, value2, "netprompur");
            return (Criteria) this;
        }

        public Criteria andNetprompurNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("NetPromPur not between", value1, value2, "netprompur");
            return (Criteria) this;
        }

        public Criteria andTaxrateIsNull() {
            addCriterion("TaxRate is null");
            return (Criteria) this;
        }

        public Criteria andTaxrateIsNotNull() {
            addCriterion("TaxRate is not null");
            return (Criteria) this;
        }

        public Criteria andTaxrateEqualTo(BigDecimal value) {
            addCriterion("TaxRate =", value, "taxrate");
            return (Criteria) this;
        }

        public Criteria andTaxrateNotEqualTo(BigDecimal value) {
            addCriterion("TaxRate <>", value, "taxrate");
            return (Criteria) this;
        }

        public Criteria andTaxrateGreaterThan(BigDecimal value) {
            addCriterion("TaxRate >", value, "taxrate");
            return (Criteria) this;
        }

        public Criteria andTaxrateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("TaxRate >=", value, "taxrate");
            return (Criteria) this;
        }

        public Criteria andTaxrateLessThan(BigDecimal value) {
            addCriterion("TaxRate <", value, "taxrate");
            return (Criteria) this;
        }

        public Criteria andTaxrateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("TaxRate <=", value, "taxrate");
            return (Criteria) this;
        }

        public Criteria andTaxrateIn(List<BigDecimal> values) {
            addCriterion("TaxRate in", values, "taxrate");
            return (Criteria) this;
        }

        public Criteria andTaxrateNotIn(List<BigDecimal> values) {
            addCriterion("TaxRate not in", values, "taxrate");
            return (Criteria) this;
        }

        public Criteria andTaxrateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("TaxRate between", value1, value2, "taxrate");
            return (Criteria) this;
        }

        public Criteria andTaxrateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("TaxRate not between", value1, value2, "taxrate");
            return (Criteria) this;
        }

        public Criteria andPacksizeIsNull() {
            addCriterion("PackSize is null");
            return (Criteria) this;
        }

        public Criteria andPacksizeIsNotNull() {
            addCriterion("PackSize is not null");
            return (Criteria) this;
        }

        public Criteria andPacksizeEqualTo(BigDecimal value) {
            addCriterion("PackSize =", value, "packsize");
            return (Criteria) this;
        }

        public Criteria andPacksizeNotEqualTo(BigDecimal value) {
            addCriterion("PackSize <>", value, "packsize");
            return (Criteria) this;
        }

        public Criteria andPacksizeGreaterThan(BigDecimal value) {
            addCriterion("PackSize >", value, "packsize");
            return (Criteria) this;
        }

        public Criteria andPacksizeGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("PackSize >=", value, "packsize");
            return (Criteria) this;
        }

        public Criteria andPacksizeLessThan(BigDecimal value) {
            addCriterion("PackSize <", value, "packsize");
            return (Criteria) this;
        }

        public Criteria andPacksizeLessThanOrEqualTo(BigDecimal value) {
            addCriterion("PackSize <=", value, "packsize");
            return (Criteria) this;
        }

        public Criteria andPacksizeIn(List<BigDecimal> values) {
            addCriterion("PackSize in", values, "packsize");
            return (Criteria) this;
        }

        public Criteria andPacksizeNotIn(List<BigDecimal> values) {
            addCriterion("PackSize not in", values, "packsize");
            return (Criteria) this;
        }

        public Criteria andPacksizeBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("PackSize between", value1, value2, "packsize");
            return (Criteria) this;
        }

        public Criteria andPacksizeNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("PackSize not between", value1, value2, "packsize");
            return (Criteria) this;
        }

        public Criteria andUnitsIsNull() {
            addCriterion("Units is null");
            return (Criteria) this;
        }

        public Criteria andUnitsIsNotNull() {
            addCriterion("Units is not null");
            return (Criteria) this;
        }

        public Criteria andUnitsEqualTo(String value) {
            addCriterion("Units =", value, "units");
            return (Criteria) this;
        }

        public Criteria andUnitsNotEqualTo(String value) {
            addCriterion("Units <>", value, "units");
            return (Criteria) this;
        }

        public Criteria andUnitsGreaterThan(String value) {
            addCriterion("Units >", value, "units");
            return (Criteria) this;
        }

        public Criteria andUnitsGreaterThanOrEqualTo(String value) {
            addCriterion("Units >=", value, "units");
            return (Criteria) this;
        }

        public Criteria andUnitsLessThan(String value) {
            addCriterion("Units <", value, "units");
            return (Criteria) this;
        }

        public Criteria andUnitsLessThanOrEqualTo(String value) {
            addCriterion("Units <=", value, "units");
            return (Criteria) this;
        }

        public Criteria andUnitsLike(String value) {
            addCriterion("Units like", value, "units");
            return (Criteria) this;
        }

        public Criteria andUnitsNotLike(String value) {
            addCriterion("Units not like", value, "units");
            return (Criteria) this;
        }

        public Criteria andUnitsIn(List<String> values) {
            addCriterion("Units in", values, "units");
            return (Criteria) this;
        }

        public Criteria andUnitsNotIn(List<String> values) {
            addCriterion("Units not in", values, "units");
            return (Criteria) this;
        }

        public Criteria andUnitsBetween(String value1, String value2) {
            addCriterion("Units between", value1, value2, "units");
            return (Criteria) this;
        }

        public Criteria andUnitsNotBetween(String value1, String value2) {
            addCriterion("Units not between", value1, value2, "units");
            return (Criteria) this;
        }

        public Criteria andMinsendqtyIsNull() {
            addCriterion("MinSendQty is null");
            return (Criteria) this;
        }

        public Criteria andMinsendqtyIsNotNull() {
            addCriterion("MinSendQty is not null");
            return (Criteria) this;
        }

        public Criteria andMinsendqtyEqualTo(Integer value) {
            addCriterion("MinSendQty =", value, "minsendqty");
            return (Criteria) this;
        }

        public Criteria andMinsendqtyNotEqualTo(Integer value) {
            addCriterion("MinSendQty <>", value, "minsendqty");
            return (Criteria) this;
        }

        public Criteria andMinsendqtyGreaterThan(Integer value) {
            addCriterion("MinSendQty >", value, "minsendqty");
            return (Criteria) this;
        }

        public Criteria andMinsendqtyGreaterThanOrEqualTo(Integer value) {
            addCriterion("MinSendQty >=", value, "minsendqty");
            return (Criteria) this;
        }

        public Criteria andMinsendqtyLessThan(Integer value) {
            addCriterion("MinSendQty <", value, "minsendqty");
            return (Criteria) this;
        }

        public Criteria andMinsendqtyLessThanOrEqualTo(Integer value) {
            addCriterion("MinSendQty <=", value, "minsendqty");
            return (Criteria) this;
        }

        public Criteria andMinsendqtyIn(List<Integer> values) {
            addCriterion("MinSendQty in", values, "minsendqty");
            return (Criteria) this;
        }

        public Criteria andMinsendqtyNotIn(List<Integer> values) {
            addCriterion("MinSendQty not in", values, "minsendqty");
            return (Criteria) this;
        }

        public Criteria andMinsendqtyBetween(Integer value1, Integer value2) {
            addCriterion("MinSendQty between", value1, value2, "minsendqty");
            return (Criteria) this;
        }

        public Criteria andMinsendqtyNotBetween(Integer value1, Integer value2) {
            addCriterion("MinSendQty not between", value1, value2, "minsendqty");
            return (Criteria) this;
        }

        public Criteria andStopdateIsNull() {
            addCriterion("StopDate is null");
            return (Criteria) this;
        }

        public Criteria andStopdateIsNotNull() {
            addCriterion("StopDate is not null");
            return (Criteria) this;
        }

        public Criteria andStopdateEqualTo(Date value) {
            addCriterion("StopDate =", value, "stopdate");
            return (Criteria) this;
        }

        public Criteria andStopdateNotEqualTo(Date value) {
            addCriterion("StopDate <>", value, "stopdate");
            return (Criteria) this;
        }

        public Criteria andStopdateGreaterThan(Date value) {
            addCriterion("StopDate >", value, "stopdate");
            return (Criteria) this;
        }

        public Criteria andStopdateGreaterThanOrEqualTo(Date value) {
            addCriterion("StopDate >=", value, "stopdate");
            return (Criteria) this;
        }

        public Criteria andStopdateLessThan(Date value) {
            addCriterion("StopDate <", value, "stopdate");
            return (Criteria) this;
        }

        public Criteria andStopdateLessThanOrEqualTo(Date value) {
            addCriterion("StopDate <=", value, "stopdate");
            return (Criteria) this;
        }

        public Criteria andStopdateIn(List<Date> values) {
            addCriterion("StopDate in", values, "stopdate");
            return (Criteria) this;
        }

        public Criteria andStopdateNotIn(List<Date> values) {
            addCriterion("StopDate not in", values, "stopdate");
            return (Criteria) this;
        }

        public Criteria andStopdateBetween(Date value1, Date value2) {
            addCriterion("StopDate between", value1, value2, "stopdate");
            return (Criteria) this;
        }

        public Criteria andStopdateNotBetween(Date value1, Date value2) {
            addCriterion("StopDate not between", value1, value2, "stopdate");
            return (Criteria) this;
        }

        public Criteria andReasonIsNull() {
            addCriterion("Reason is null");
            return (Criteria) this;
        }

        public Criteria andReasonIsNotNull() {
            addCriterion("Reason is not null");
            return (Criteria) this;
        }

        public Criteria andReasonEqualTo(String value) {
            addCriterion("Reason =", value, "reason");
            return (Criteria) this;
        }

        public Criteria andReasonNotEqualTo(String value) {
            addCriterion("Reason <>", value, "reason");
            return (Criteria) this;
        }

        public Criteria andReasonGreaterThan(String value) {
            addCriterion("Reason >", value, "reason");
            return (Criteria) this;
        }

        public Criteria andReasonGreaterThanOrEqualTo(String value) {
            addCriterion("Reason >=", value, "reason");
            return (Criteria) this;
        }

        public Criteria andReasonLessThan(String value) {
            addCriterion("Reason <", value, "reason");
            return (Criteria) this;
        }

        public Criteria andReasonLessThanOrEqualTo(String value) {
            addCriterion("Reason <=", value, "reason");
            return (Criteria) this;
        }

        public Criteria andReasonLike(String value) {
            addCriterion("Reason like", value, "reason");
            return (Criteria) this;
        }

        public Criteria andReasonNotLike(String value) {
            addCriterion("Reason not like", value, "reason");
            return (Criteria) this;
        }

        public Criteria andReasonIn(List<String> values) {
            addCriterion("Reason in", values, "reason");
            return (Criteria) this;
        }

        public Criteria andReasonNotIn(List<String> values) {
            addCriterion("Reason not in", values, "reason");
            return (Criteria) this;
        }

        public Criteria andReasonBetween(String value1, String value2) {
            addCriterion("Reason between", value1, value2, "reason");
            return (Criteria) this;
        }

        public Criteria andReasonNotBetween(String value1, String value2) {
            addCriterion("Reason not between", value1, value2, "reason");
            return (Criteria) this;
        }

        public Criteria andInuredateIsNull() {
            addCriterion("InureDate is null");
            return (Criteria) this;
        }

        public Criteria andInuredateIsNotNull() {
            addCriterion("InureDate is not null");
            return (Criteria) this;
        }

        public Criteria andInuredateEqualTo(Date value) {
            addCriterion("InureDate =", value, "inuredate");
            return (Criteria) this;
        }

        public Criteria andInuredateNotEqualTo(Date value) {
            addCriterion("InureDate <>", value, "inuredate");
            return (Criteria) this;
        }

        public Criteria andInuredateGreaterThan(Date value) {
            addCriterion("InureDate >", value, "inuredate");
            return (Criteria) this;
        }

        public Criteria andInuredateGreaterThanOrEqualTo(Date value) {
            addCriterion("InureDate >=", value, "inuredate");
            return (Criteria) this;
        }

        public Criteria andInuredateLessThan(Date value) {
            addCriterion("InureDate <", value, "inuredate");
            return (Criteria) this;
        }

        public Criteria andInuredateLessThanOrEqualTo(Date value) {
            addCriterion("InureDate <=", value, "inuredate");
            return (Criteria) this;
        }

        public Criteria andInuredateIn(List<Date> values) {
            addCriterion("InureDate in", values, "inuredate");
            return (Criteria) this;
        }

        public Criteria andInuredateNotIn(List<Date> values) {
            addCriterion("InureDate not in", values, "inuredate");
            return (Criteria) this;
        }

        public Criteria andInuredateBetween(Date value1, Date value2) {
            addCriterion("InureDate between", value1, value2, "inuredate");
            return (Criteria) this;
        }

        public Criteria andInuredateNotBetween(Date value1, Date value2) {
            addCriterion("InureDate not between", value1, value2, "inuredate");
            return (Criteria) this;
        }

        public Criteria andAbandondateIsNull() {
            addCriterion("AbandonDate is null");
            return (Criteria) this;
        }

        public Criteria andAbandondateIsNotNull() {
            addCriterion("AbandonDate is not null");
            return (Criteria) this;
        }

        public Criteria andAbandondateEqualTo(Date value) {
            addCriterion("AbandonDate =", value, "abandondate");
            return (Criteria) this;
        }

        public Criteria andAbandondateNotEqualTo(Date value) {
            addCriterion("AbandonDate <>", value, "abandondate");
            return (Criteria) this;
        }

        public Criteria andAbandondateGreaterThan(Date value) {
            addCriterion("AbandonDate >", value, "abandondate");
            return (Criteria) this;
        }

        public Criteria andAbandondateGreaterThanOrEqualTo(Date value) {
            addCriterion("AbandonDate >=", value, "abandondate");
            return (Criteria) this;
        }

        public Criteria andAbandondateLessThan(Date value) {
            addCriterion("AbandonDate <", value, "abandondate");
            return (Criteria) this;
        }

        public Criteria andAbandondateLessThanOrEqualTo(Date value) {
            addCriterion("AbandonDate <=", value, "abandondate");
            return (Criteria) this;
        }

        public Criteria andAbandondateIn(List<Date> values) {
            addCriterion("AbandonDate in", values, "abandondate");
            return (Criteria) this;
        }

        public Criteria andAbandondateNotIn(List<Date> values) {
            addCriterion("AbandonDate not in", values, "abandondate");
            return (Criteria) this;
        }

        public Criteria andAbandondateBetween(Date value1, Date value2) {
            addCriterion("AbandonDate between", value1, value2, "abandondate");
            return (Criteria) this;
        }

        public Criteria andAbandondateNotBetween(Date value1, Date value2) {
            addCriterion("AbandonDate not between", value1, value2, "abandondate");
            return (Criteria) this;
        }

        public Criteria andAbandonwhysIsNull() {
            addCriterion("AbandonWhys is null");
            return (Criteria) this;
        }

        public Criteria andAbandonwhysIsNotNull() {
            addCriterion("AbandonWhys is not null");
            return (Criteria) this;
        }

        public Criteria andAbandonwhysEqualTo(String value) {
            addCriterion("AbandonWhys =", value, "abandonwhys");
            return (Criteria) this;
        }

        public Criteria andAbandonwhysNotEqualTo(String value) {
            addCriterion("AbandonWhys <>", value, "abandonwhys");
            return (Criteria) this;
        }

        public Criteria andAbandonwhysGreaterThan(String value) {
            addCriterion("AbandonWhys >", value, "abandonwhys");
            return (Criteria) this;
        }

        public Criteria andAbandonwhysGreaterThanOrEqualTo(String value) {
            addCriterion("AbandonWhys >=", value, "abandonwhys");
            return (Criteria) this;
        }

        public Criteria andAbandonwhysLessThan(String value) {
            addCriterion("AbandonWhys <", value, "abandonwhys");
            return (Criteria) this;
        }

        public Criteria andAbandonwhysLessThanOrEqualTo(String value) {
            addCriterion("AbandonWhys <=", value, "abandonwhys");
            return (Criteria) this;
        }

        public Criteria andAbandonwhysLike(String value) {
            addCriterion("AbandonWhys like", value, "abandonwhys");
            return (Criteria) this;
        }

        public Criteria andAbandonwhysNotLike(String value) {
            addCriterion("AbandonWhys not like", value, "abandonwhys");
            return (Criteria) this;
        }

        public Criteria andAbandonwhysIn(List<String> values) {
            addCriterion("AbandonWhys in", values, "abandonwhys");
            return (Criteria) this;
        }

        public Criteria andAbandonwhysNotIn(List<String> values) {
            addCriterion("AbandonWhys not in", values, "abandonwhys");
            return (Criteria) this;
        }

        public Criteria andAbandonwhysBetween(String value1, String value2) {
            addCriterion("AbandonWhys between", value1, value2, "abandonwhys");
            return (Criteria) this;
        }

        public Criteria andAbandonwhysNotBetween(String value1, String value2) {
            addCriterion("AbandonWhys not between", value1, value2, "abandonwhys");
            return (Criteria) this;
        }

        public Criteria andRebateIsNull() {
            addCriterion("Rebate is null");
            return (Criteria) this;
        }

        public Criteria andRebateIsNotNull() {
            addCriterion("Rebate is not null");
            return (Criteria) this;
        }

        public Criteria andRebateEqualTo(BigDecimal value) {
            addCriterion("Rebate =", value, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateNotEqualTo(BigDecimal value) {
            addCriterion("Rebate <>", value, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateGreaterThan(BigDecimal value) {
            addCriterion("Rebate >", value, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("Rebate >=", value, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateLessThan(BigDecimal value) {
            addCriterion("Rebate <", value, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("Rebate <=", value, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateIn(List<BigDecimal> values) {
            addCriterion("Rebate in", values, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateNotIn(List<BigDecimal> values) {
            addCriterion("Rebate not in", values, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Rebate between", value1, value2, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Rebate not between", value1, value2, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebatebaseIsNull() {
            addCriterion("RebateBase is null");
            return (Criteria) this;
        }

        public Criteria andRebatebaseIsNotNull() {
            addCriterion("RebateBase is not null");
            return (Criteria) this;
        }

        public Criteria andRebatebaseEqualTo(BigDecimal value) {
            addCriterion("RebateBase =", value, "rebatebase");
            return (Criteria) this;
        }

        public Criteria andRebatebaseNotEqualTo(BigDecimal value) {
            addCriterion("RebateBase <>", value, "rebatebase");
            return (Criteria) this;
        }

        public Criteria andRebatebaseGreaterThan(BigDecimal value) {
            addCriterion("RebateBase >", value, "rebatebase");
            return (Criteria) this;
        }

        public Criteria andRebatebaseGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("RebateBase >=", value, "rebatebase");
            return (Criteria) this;
        }

        public Criteria andRebatebaseLessThan(BigDecimal value) {
            addCriterion("RebateBase <", value, "rebatebase");
            return (Criteria) this;
        }

        public Criteria andRebatebaseLessThanOrEqualTo(BigDecimal value) {
            addCriterion("RebateBase <=", value, "rebatebase");
            return (Criteria) this;
        }

        public Criteria andRebatebaseIn(List<BigDecimal> values) {
            addCriterion("RebateBase in", values, "rebatebase");
            return (Criteria) this;
        }

        public Criteria andRebatebaseNotIn(List<BigDecimal> values) {
            addCriterion("RebateBase not in", values, "rebatebase");
            return (Criteria) this;
        }

        public Criteria andRebatebaseBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("RebateBase between", value1, value2, "rebatebase");
            return (Criteria) this;
        }

        public Criteria andRebatebaseNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("RebateBase not between", value1, value2, "rebatebase");
            return (Criteria) this;
        }

        public Criteria andPsdateIsNull() {
            addCriterion("PSDate is null");
            return (Criteria) this;
        }

        public Criteria andPsdateIsNotNull() {
            addCriterion("PSDate is not null");
            return (Criteria) this;
        }

        public Criteria andPsdateEqualTo(Date value) {
            addCriterion("PSDate =", value, "psdate");
            return (Criteria) this;
        }

        public Criteria andPsdateNotEqualTo(Date value) {
            addCriterion("PSDate <>", value, "psdate");
            return (Criteria) this;
        }

        public Criteria andPsdateGreaterThan(Date value) {
            addCriterion("PSDate >", value, "psdate");
            return (Criteria) this;
        }

        public Criteria andPsdateGreaterThanOrEqualTo(Date value) {
            addCriterion("PSDate >=", value, "psdate");
            return (Criteria) this;
        }

        public Criteria andPsdateLessThan(Date value) {
            addCriterion("PSDate <", value, "psdate");
            return (Criteria) this;
        }

        public Criteria andPsdateLessThanOrEqualTo(Date value) {
            addCriterion("PSDate <=", value, "psdate");
            return (Criteria) this;
        }

        public Criteria andPsdateIn(List<Date> values) {
            addCriterion("PSDate in", values, "psdate");
            return (Criteria) this;
        }

        public Criteria andPsdateNotIn(List<Date> values) {
            addCriterion("PSDate not in", values, "psdate");
            return (Criteria) this;
        }

        public Criteria andPsdateBetween(Date value1, Date value2) {
            addCriterion("PSDate between", value1, value2, "psdate");
            return (Criteria) this;
        }

        public Criteria andPsdateNotBetween(Date value1, Date value2) {
            addCriterion("PSDate not between", value1, value2, "psdate");
            return (Criteria) this;
        }

        public Criteria andPedateIsNull() {
            addCriterion("PEDate is null");
            return (Criteria) this;
        }

        public Criteria andPedateIsNotNull() {
            addCriterion("PEDate is not null");
            return (Criteria) this;
        }

        public Criteria andPedateEqualTo(Date value) {
            addCriterion("PEDate =", value, "pedate");
            return (Criteria) this;
        }

        public Criteria andPedateNotEqualTo(Date value) {
            addCriterion("PEDate <>", value, "pedate");
            return (Criteria) this;
        }

        public Criteria andPedateGreaterThan(Date value) {
            addCriterion("PEDate >", value, "pedate");
            return (Criteria) this;
        }

        public Criteria andPedateGreaterThanOrEqualTo(Date value) {
            addCriterion("PEDate >=", value, "pedate");
            return (Criteria) this;
        }

        public Criteria andPedateLessThan(Date value) {
            addCriterion("PEDate <", value, "pedate");
            return (Criteria) this;
        }

        public Criteria andPedateLessThanOrEqualTo(Date value) {
            addCriterion("PEDate <=", value, "pedate");
            return (Criteria) this;
        }

        public Criteria andPedateIn(List<Date> values) {
            addCriterion("PEDate in", values, "pedate");
            return (Criteria) this;
        }

        public Criteria andPedateNotIn(List<Date> values) {
            addCriterion("PEDate not in", values, "pedate");
            return (Criteria) this;
        }

        public Criteria andPedateBetween(Date value1, Date value2) {
            addCriterion("PEDate between", value1, value2, "pedate");
            return (Criteria) this;
        }

        public Criteria andPedateNotBetween(Date value1, Date value2) {
            addCriterion("PEDate not between", value1, value2, "pedate");
            return (Criteria) this;
        }

        public Criteria andCurbaseIsNull() {
            addCriterion("CurBase is null");
            return (Criteria) this;
        }

        public Criteria andCurbaseIsNotNull() {
            addCriterion("CurBase is not null");
            return (Criteria) this;
        }

        public Criteria andCurbaseEqualTo(BigDecimal value) {
            addCriterion("CurBase =", value, "curbase");
            return (Criteria) this;
        }

        public Criteria andCurbaseNotEqualTo(BigDecimal value) {
            addCriterion("CurBase <>", value, "curbase");
            return (Criteria) this;
        }

        public Criteria andCurbaseGreaterThan(BigDecimal value) {
            addCriterion("CurBase >", value, "curbase");
            return (Criteria) this;
        }

        public Criteria andCurbaseGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("CurBase >=", value, "curbase");
            return (Criteria) this;
        }

        public Criteria andCurbaseLessThan(BigDecimal value) {
            addCriterion("CurBase <", value, "curbase");
            return (Criteria) this;
        }

        public Criteria andCurbaseLessThanOrEqualTo(BigDecimal value) {
            addCriterion("CurBase <=", value, "curbase");
            return (Criteria) this;
        }

        public Criteria andCurbaseIn(List<BigDecimal> values) {
            addCriterion("CurBase in", values, "curbase");
            return (Criteria) this;
        }

        public Criteria andCurbaseNotIn(List<BigDecimal> values) {
            addCriterion("CurBase not in", values, "curbase");
            return (Criteria) this;
        }

        public Criteria andCurbaseBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("CurBase between", value1, value2, "curbase");
            return (Criteria) this;
        }

        public Criteria andCurbaseNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("CurBase not between", value1, value2, "curbase");
            return (Criteria) this;
        }

        public Criteria andCurfreeIsNull() {
            addCriterion("CurFree is null");
            return (Criteria) this;
        }

        public Criteria andCurfreeIsNotNull() {
            addCriterion("CurFree is not null");
            return (Criteria) this;
        }

        public Criteria andCurfreeEqualTo(BigDecimal value) {
            addCriterion("CurFree =", value, "curfree");
            return (Criteria) this;
        }

        public Criteria andCurfreeNotEqualTo(BigDecimal value) {
            addCriterion("CurFree <>", value, "curfree");
            return (Criteria) this;
        }

        public Criteria andCurfreeGreaterThan(BigDecimal value) {
            addCriterion("CurFree >", value, "curfree");
            return (Criteria) this;
        }

        public Criteria andCurfreeGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("CurFree >=", value, "curfree");
            return (Criteria) this;
        }

        public Criteria andCurfreeLessThan(BigDecimal value) {
            addCriterion("CurFree <", value, "curfree");
            return (Criteria) this;
        }

        public Criteria andCurfreeLessThanOrEqualTo(BigDecimal value) {
            addCriterion("CurFree <=", value, "curfree");
            return (Criteria) this;
        }

        public Criteria andCurfreeIn(List<BigDecimal> values) {
            addCriterion("CurFree in", values, "curfree");
            return (Criteria) this;
        }

        public Criteria andCurfreeNotIn(List<BigDecimal> values) {
            addCriterion("CurFree not in", values, "curfree");
            return (Criteria) this;
        }

        public Criteria andCurfreeBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("CurFree between", value1, value2, "curfree");
            return (Criteria) this;
        }

        public Criteria andCurfreeNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("CurFree not between", value1, value2, "curfree");
            return (Criteria) this;
        }

        public Criteria andPrombaseIsNull() {
            addCriterion("PromBase is null");
            return (Criteria) this;
        }

        public Criteria andPrombaseIsNotNull() {
            addCriterion("PromBase is not null");
            return (Criteria) this;
        }

        public Criteria andPrombaseEqualTo(BigDecimal value) {
            addCriterion("PromBase =", value, "prombase");
            return (Criteria) this;
        }

        public Criteria andPrombaseNotEqualTo(BigDecimal value) {
            addCriterion("PromBase <>", value, "prombase");
            return (Criteria) this;
        }

        public Criteria andPrombaseGreaterThan(BigDecimal value) {
            addCriterion("PromBase >", value, "prombase");
            return (Criteria) this;
        }

        public Criteria andPrombaseGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("PromBase >=", value, "prombase");
            return (Criteria) this;
        }

        public Criteria andPrombaseLessThan(BigDecimal value) {
            addCriterion("PromBase <", value, "prombase");
            return (Criteria) this;
        }

        public Criteria andPrombaseLessThanOrEqualTo(BigDecimal value) {
            addCriterion("PromBase <=", value, "prombase");
            return (Criteria) this;
        }

        public Criteria andPrombaseIn(List<BigDecimal> values) {
            addCriterion("PromBase in", values, "prombase");
            return (Criteria) this;
        }

        public Criteria andPrombaseNotIn(List<BigDecimal> values) {
            addCriterion("PromBase not in", values, "prombase");
            return (Criteria) this;
        }

        public Criteria andPrombaseBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("PromBase between", value1, value2, "prombase");
            return (Criteria) this;
        }

        public Criteria andPrombaseNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("PromBase not between", value1, value2, "prombase");
            return (Criteria) this;
        }

        public Criteria andPromfreeIsNull() {
            addCriterion("PromFree is null");
            return (Criteria) this;
        }

        public Criteria andPromfreeIsNotNull() {
            addCriterion("PromFree is not null");
            return (Criteria) this;
        }

        public Criteria andPromfreeEqualTo(BigDecimal value) {
            addCriterion("PromFree =", value, "promfree");
            return (Criteria) this;
        }

        public Criteria andPromfreeNotEqualTo(BigDecimal value) {
            addCriterion("PromFree <>", value, "promfree");
            return (Criteria) this;
        }

        public Criteria andPromfreeGreaterThan(BigDecimal value) {
            addCriterion("PromFree >", value, "promfree");
            return (Criteria) this;
        }

        public Criteria andPromfreeGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("PromFree >=", value, "promfree");
            return (Criteria) this;
        }

        public Criteria andPromfreeLessThan(BigDecimal value) {
            addCriterion("PromFree <", value, "promfree");
            return (Criteria) this;
        }

        public Criteria andPromfreeLessThanOrEqualTo(BigDecimal value) {
            addCriterion("PromFree <=", value, "promfree");
            return (Criteria) this;
        }

        public Criteria andPromfreeIn(List<BigDecimal> values) {
            addCriterion("PromFree in", values, "promfree");
            return (Criteria) this;
        }

        public Criteria andPromfreeNotIn(List<BigDecimal> values) {
            addCriterion("PromFree not in", values, "promfree");
            return (Criteria) this;
        }

        public Criteria andPromfreeBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("PromFree between", value1, value2, "promfree");
            return (Criteria) this;
        }

        public Criteria andPromfreeNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("PromFree not between", value1, value2, "promfree");
            return (Criteria) this;
        }

        public Criteria andIsrebateIsNull() {
            addCriterion("IsRebate is null");
            return (Criteria) this;
        }

        public Criteria andIsrebateIsNotNull() {
            addCriterion("IsRebate is not null");
            return (Criteria) this;
        }

        public Criteria andIsrebateEqualTo(String value) {
            addCriterion("IsRebate =", value, "isrebate");
            return (Criteria) this;
        }

        public Criteria andIsrebateNotEqualTo(String value) {
            addCriterion("IsRebate <>", value, "isrebate");
            return (Criteria) this;
        }

        public Criteria andIsrebateGreaterThan(String value) {
            addCriterion("IsRebate >", value, "isrebate");
            return (Criteria) this;
        }

        public Criteria andIsrebateGreaterThanOrEqualTo(String value) {
            addCriterion("IsRebate >=", value, "isrebate");
            return (Criteria) this;
        }

        public Criteria andIsrebateLessThan(String value) {
            addCriterion("IsRebate <", value, "isrebate");
            return (Criteria) this;
        }

        public Criteria andIsrebateLessThanOrEqualTo(String value) {
            addCriterion("IsRebate <=", value, "isrebate");
            return (Criteria) this;
        }

        public Criteria andIsrebateLike(String value) {
            addCriterion("IsRebate like", value, "isrebate");
            return (Criteria) this;
        }

        public Criteria andIsrebateNotLike(String value) {
            addCriterion("IsRebate not like", value, "isrebate");
            return (Criteria) this;
        }

        public Criteria andIsrebateIn(List<String> values) {
            addCriterion("IsRebate in", values, "isrebate");
            return (Criteria) this;
        }

        public Criteria andIsrebateNotIn(List<String> values) {
            addCriterion("IsRebate not in", values, "isrebate");
            return (Criteria) this;
        }

        public Criteria andIsrebateBetween(String value1, String value2) {
            addCriterion("IsRebate between", value1, value2, "isrebate");
            return (Criteria) this;
        }

        public Criteria andIsrebateNotBetween(String value1, String value2) {
            addCriterion("IsRebate not between", value1, value2, "isrebate");
            return (Criteria) this;
        }

        public Criteria andBalancecycIsNull() {
            addCriterion("BalanceCyc is null");
            return (Criteria) this;
        }

        public Criteria andBalancecycIsNotNull() {
            addCriterion("BalanceCyc is not null");
            return (Criteria) this;
        }

        public Criteria andBalancecycEqualTo(Integer value) {
            addCriterion("BalanceCyc =", value, "balancecyc");
            return (Criteria) this;
        }

        public Criteria andBalancecycNotEqualTo(Integer value) {
            addCriterion("BalanceCyc <>", value, "balancecyc");
            return (Criteria) this;
        }

        public Criteria andBalancecycGreaterThan(Integer value) {
            addCriterion("BalanceCyc >", value, "balancecyc");
            return (Criteria) this;
        }

        public Criteria andBalancecycGreaterThanOrEqualTo(Integer value) {
            addCriterion("BalanceCyc >=", value, "balancecyc");
            return (Criteria) this;
        }

        public Criteria andBalancecycLessThan(Integer value) {
            addCriterion("BalanceCyc <", value, "balancecyc");
            return (Criteria) this;
        }

        public Criteria andBalancecycLessThanOrEqualTo(Integer value) {
            addCriterion("BalanceCyc <=", value, "balancecyc");
            return (Criteria) this;
        }

        public Criteria andBalancecycIn(List<Integer> values) {
            addCriterion("BalanceCyc in", values, "balancecyc");
            return (Criteria) this;
        }

        public Criteria andBalancecycNotIn(List<Integer> values) {
            addCriterion("BalanceCyc not in", values, "balancecyc");
            return (Criteria) this;
        }

        public Criteria andBalancecycBetween(Integer value1, Integer value2) {
            addCriterion("BalanceCyc between", value1, value2, "balancecyc");
            return (Criteria) this;
        }

        public Criteria andBalancecycNotBetween(Integer value1, Integer value2) {
            addCriterion("BalanceCyc not between", value1, value2, "balancecyc");
            return (Criteria) this;
        }

        public Criteria andVendoritemIsNull() {
            addCriterion("VendorItem is null");
            return (Criteria) this;
        }

        public Criteria andVendoritemIsNotNull() {
            addCriterion("VendorItem is not null");
            return (Criteria) this;
        }

        public Criteria andVendoritemEqualTo(String value) {
            addCriterion("VendorItem =", value, "vendoritem");
            return (Criteria) this;
        }

        public Criteria andVendoritemNotEqualTo(String value) {
            addCriterion("VendorItem <>", value, "vendoritem");
            return (Criteria) this;
        }

        public Criteria andVendoritemGreaterThan(String value) {
            addCriterion("VendorItem >", value, "vendoritem");
            return (Criteria) this;
        }

        public Criteria andVendoritemGreaterThanOrEqualTo(String value) {
            addCriterion("VendorItem >=", value, "vendoritem");
            return (Criteria) this;
        }

        public Criteria andVendoritemLessThan(String value) {
            addCriterion("VendorItem <", value, "vendoritem");
            return (Criteria) this;
        }

        public Criteria andVendoritemLessThanOrEqualTo(String value) {
            addCriterion("VendorItem <=", value, "vendoritem");
            return (Criteria) this;
        }

        public Criteria andVendoritemLike(String value) {
            addCriterion("VendorItem like", value, "vendoritem");
            return (Criteria) this;
        }

        public Criteria andVendoritemNotLike(String value) {
            addCriterion("VendorItem not like", value, "vendoritem");
            return (Criteria) this;
        }

        public Criteria andVendoritemIn(List<String> values) {
            addCriterion("VendorItem in", values, "vendoritem");
            return (Criteria) this;
        }

        public Criteria andVendoritemNotIn(List<String> values) {
            addCriterion("VendorItem not in", values, "vendoritem");
            return (Criteria) this;
        }

        public Criteria andVendoritemBetween(String value1, String value2) {
            addCriterion("VendorItem between", value1, value2, "vendoritem");
            return (Criteria) this;
        }

        public Criteria andVendoritemNotBetween(String value1, String value2) {
            addCriterion("VendorItem not between", value1, value2, "vendoritem");
            return (Criteria) this;
        }

        public Criteria andNewupdateIsNull() {
            addCriterion("NewUpdate is null");
            return (Criteria) this;
        }

        public Criteria andNewupdateIsNotNull() {
            addCriterion("NewUpdate is not null");
            return (Criteria) this;
        }

        public Criteria andNewupdateEqualTo(Date value) {
            addCriterion("NewUpdate =", value, "newupdate");
            return (Criteria) this;
        }

        public Criteria andNewupdateNotEqualTo(Date value) {
            addCriterion("NewUpdate <>", value, "newupdate");
            return (Criteria) this;
        }

        public Criteria andNewupdateGreaterThan(Date value) {
            addCriterion("NewUpdate >", value, "newupdate");
            return (Criteria) this;
        }

        public Criteria andNewupdateGreaterThanOrEqualTo(Date value) {
            addCriterion("NewUpdate >=", value, "newupdate");
            return (Criteria) this;
        }

        public Criteria andNewupdateLessThan(Date value) {
            addCriterion("NewUpdate <", value, "newupdate");
            return (Criteria) this;
        }

        public Criteria andNewupdateLessThanOrEqualTo(Date value) {
            addCriterion("NewUpdate <=", value, "newupdate");
            return (Criteria) this;
        }

        public Criteria andNewupdateIn(List<Date> values) {
            addCriterion("NewUpdate in", values, "newupdate");
            return (Criteria) this;
        }

        public Criteria andNewupdateNotIn(List<Date> values) {
            addCriterion("NewUpdate not in", values, "newupdate");
            return (Criteria) this;
        }

        public Criteria andNewupdateBetween(Date value1, Date value2) {
            addCriterion("NewUpdate between", value1, value2, "newupdate");
            return (Criteria) this;
        }

        public Criteria andNewupdateNotBetween(Date value1, Date value2) {
            addCriterion("NewUpdate not between", value1, value2, "newupdate");
            return (Criteria) this;
        }

        public Criteria andIsinvoiceIsNull() {
            addCriterion("IsInvoice is null");
            return (Criteria) this;
        }

        public Criteria andIsinvoiceIsNotNull() {
            addCriterion("IsInvoice is not null");
            return (Criteria) this;
        }

        public Criteria andIsinvoiceEqualTo(String value) {
            addCriterion("IsInvoice =", value, "isinvoice");
            return (Criteria) this;
        }

        public Criteria andIsinvoiceNotEqualTo(String value) {
            addCriterion("IsInvoice <>", value, "isinvoice");
            return (Criteria) this;
        }

        public Criteria andIsinvoiceGreaterThan(String value) {
            addCriterion("IsInvoice >", value, "isinvoice");
            return (Criteria) this;
        }

        public Criteria andIsinvoiceGreaterThanOrEqualTo(String value) {
            addCriterion("IsInvoice >=", value, "isinvoice");
            return (Criteria) this;
        }

        public Criteria andIsinvoiceLessThan(String value) {
            addCriterion("IsInvoice <", value, "isinvoice");
            return (Criteria) this;
        }

        public Criteria andIsinvoiceLessThanOrEqualTo(String value) {
            addCriterion("IsInvoice <=", value, "isinvoice");
            return (Criteria) this;
        }

        public Criteria andIsinvoiceLike(String value) {
            addCriterion("IsInvoice like", value, "isinvoice");
            return (Criteria) this;
        }

        public Criteria andIsinvoiceNotLike(String value) {
            addCriterion("IsInvoice not like", value, "isinvoice");
            return (Criteria) this;
        }

        public Criteria andIsinvoiceIn(List<String> values) {
            addCriterion("IsInvoice in", values, "isinvoice");
            return (Criteria) this;
        }

        public Criteria andIsinvoiceNotIn(List<String> values) {
            addCriterion("IsInvoice not in", values, "isinvoice");
            return (Criteria) this;
        }

        public Criteria andIsinvoiceBetween(String value1, String value2) {
            addCriterion("IsInvoice between", value1, value2, "isinvoice");
            return (Criteria) this;
        }

        public Criteria andIsinvoiceNotBetween(String value1, String value2) {
            addCriterion("IsInvoice not between", value1, value2, "isinvoice");
            return (Criteria) this;
        }

        public Criteria andIsofferIsNull() {
            addCriterion("IsOffer is null");
            return (Criteria) this;
        }

        public Criteria andIsofferIsNotNull() {
            addCriterion("IsOffer is not null");
            return (Criteria) this;
        }

        public Criteria andIsofferEqualTo(String value) {
            addCriterion("IsOffer =", value, "isoffer");
            return (Criteria) this;
        }

        public Criteria andIsofferNotEqualTo(String value) {
            addCriterion("IsOffer <>", value, "isoffer");
            return (Criteria) this;
        }

        public Criteria andIsofferGreaterThan(String value) {
            addCriterion("IsOffer >", value, "isoffer");
            return (Criteria) this;
        }

        public Criteria andIsofferGreaterThanOrEqualTo(String value) {
            addCriterion("IsOffer >=", value, "isoffer");
            return (Criteria) this;
        }

        public Criteria andIsofferLessThan(String value) {
            addCriterion("IsOffer <", value, "isoffer");
            return (Criteria) this;
        }

        public Criteria andIsofferLessThanOrEqualTo(String value) {
            addCriterion("IsOffer <=", value, "isoffer");
            return (Criteria) this;
        }

        public Criteria andIsofferLike(String value) {
            addCriterion("IsOffer like", value, "isoffer");
            return (Criteria) this;
        }

        public Criteria andIsofferNotLike(String value) {
            addCriterion("IsOffer not like", value, "isoffer");
            return (Criteria) this;
        }

        public Criteria andIsofferIn(List<String> values) {
            addCriterion("IsOffer in", values, "isoffer");
            return (Criteria) this;
        }

        public Criteria andIsofferNotIn(List<String> values) {
            addCriterion("IsOffer not in", values, "isoffer");
            return (Criteria) this;
        }

        public Criteria andIsofferBetween(String value1, String value2) {
            addCriterion("IsOffer between", value1, value2, "isoffer");
            return (Criteria) this;
        }

        public Criteria andIsofferNotBetween(String value1, String value2) {
            addCriterion("IsOffer not between", value1, value2, "isoffer");
            return (Criteria) this;
        }

        public Criteria andIsbottomIsNull() {
            addCriterion("IsBottom is null");
            return (Criteria) this;
        }

        public Criteria andIsbottomIsNotNull() {
            addCriterion("IsBottom is not null");
            return (Criteria) this;
        }

        public Criteria andIsbottomEqualTo(String value) {
            addCriterion("IsBottom =", value, "isbottom");
            return (Criteria) this;
        }

        public Criteria andIsbottomNotEqualTo(String value) {
            addCriterion("IsBottom <>", value, "isbottom");
            return (Criteria) this;
        }

        public Criteria andIsbottomGreaterThan(String value) {
            addCriterion("IsBottom >", value, "isbottom");
            return (Criteria) this;
        }

        public Criteria andIsbottomGreaterThanOrEqualTo(String value) {
            addCriterion("IsBottom >=", value, "isbottom");
            return (Criteria) this;
        }

        public Criteria andIsbottomLessThan(String value) {
            addCriterion("IsBottom <", value, "isbottom");
            return (Criteria) this;
        }

        public Criteria andIsbottomLessThanOrEqualTo(String value) {
            addCriterion("IsBottom <=", value, "isbottom");
            return (Criteria) this;
        }

        public Criteria andIsbottomLike(String value) {
            addCriterion("IsBottom like", value, "isbottom");
            return (Criteria) this;
        }

        public Criteria andIsbottomNotLike(String value) {
            addCriterion("IsBottom not like", value, "isbottom");
            return (Criteria) this;
        }

        public Criteria andIsbottomIn(List<String> values) {
            addCriterion("IsBottom in", values, "isbottom");
            return (Criteria) this;
        }

        public Criteria andIsbottomNotIn(List<String> values) {
            addCriterion("IsBottom not in", values, "isbottom");
            return (Criteria) this;
        }

        public Criteria andIsbottomBetween(String value1, String value2) {
            addCriterion("IsBottom between", value1, value2, "isbottom");
            return (Criteria) this;
        }

        public Criteria andIsbottomNotBetween(String value1, String value2) {
            addCriterion("IsBottom not between", value1, value2, "isbottom");
            return (Criteria) this;
        }

        public Criteria andMngtagIsNull() {
            addCriterion("MNGTag is null");
            return (Criteria) this;
        }

        public Criteria andMngtagIsNotNull() {
            addCriterion("MNGTag is not null");
            return (Criteria) this;
        }

        public Criteria andMngtagEqualTo(String value) {
            addCriterion("MNGTag =", value, "mngtag");
            return (Criteria) this;
        }

        public Criteria andMngtagNotEqualTo(String value) {
            addCriterion("MNGTag <>", value, "mngtag");
            return (Criteria) this;
        }

        public Criteria andMngtagGreaterThan(String value) {
            addCriterion("MNGTag >", value, "mngtag");
            return (Criteria) this;
        }

        public Criteria andMngtagGreaterThanOrEqualTo(String value) {
            addCriterion("MNGTag >=", value, "mngtag");
            return (Criteria) this;
        }

        public Criteria andMngtagLessThan(String value) {
            addCriterion("MNGTag <", value, "mngtag");
            return (Criteria) this;
        }

        public Criteria andMngtagLessThanOrEqualTo(String value) {
            addCriterion("MNGTag <=", value, "mngtag");
            return (Criteria) this;
        }

        public Criteria andMngtagLike(String value) {
            addCriterion("MNGTag like", value, "mngtag");
            return (Criteria) this;
        }

        public Criteria andMngtagNotLike(String value) {
            addCriterion("MNGTag not like", value, "mngtag");
            return (Criteria) this;
        }

        public Criteria andMngtagIn(List<String> values) {
            addCriterion("MNGTag in", values, "mngtag");
            return (Criteria) this;
        }

        public Criteria andMngtagNotIn(List<String> values) {
            addCriterion("MNGTag not in", values, "mngtag");
            return (Criteria) this;
        }

        public Criteria andMngtagBetween(String value1, String value2) {
            addCriterion("MNGTag between", value1, value2, "mngtag");
            return (Criteria) this;
        }

        public Criteria andMngtagNotBetween(String value1, String value2) {
            addCriterion("MNGTag not between", value1, value2, "mngtag");
            return (Criteria) this;
        }

        public Criteria andPresitemcodeIsNull() {
            addCriterion("PresItemCode is null");
            return (Criteria) this;
        }

        public Criteria andPresitemcodeIsNotNull() {
            addCriterion("PresItemCode is not null");
            return (Criteria) this;
        }

        public Criteria andPresitemcodeEqualTo(String value) {
            addCriterion("PresItemCode =", value, "presitemcode");
            return (Criteria) this;
        }

        public Criteria andPresitemcodeNotEqualTo(String value) {
            addCriterion("PresItemCode <>", value, "presitemcode");
            return (Criteria) this;
        }

        public Criteria andPresitemcodeGreaterThan(String value) {
            addCriterion("PresItemCode >", value, "presitemcode");
            return (Criteria) this;
        }

        public Criteria andPresitemcodeGreaterThanOrEqualTo(String value) {
            addCriterion("PresItemCode >=", value, "presitemcode");
            return (Criteria) this;
        }

        public Criteria andPresitemcodeLessThan(String value) {
            addCriterion("PresItemCode <", value, "presitemcode");
            return (Criteria) this;
        }

        public Criteria andPresitemcodeLessThanOrEqualTo(String value) {
            addCriterion("PresItemCode <=", value, "presitemcode");
            return (Criteria) this;
        }

        public Criteria andPresitemcodeLike(String value) {
            addCriterion("PresItemCode like", value, "presitemcode");
            return (Criteria) this;
        }

        public Criteria andPresitemcodeNotLike(String value) {
            addCriterion("PresItemCode not like", value, "presitemcode");
            return (Criteria) this;
        }

        public Criteria andPresitemcodeIn(List<String> values) {
            addCriterion("PresItemCode in", values, "presitemcode");
            return (Criteria) this;
        }

        public Criteria andPresitemcodeNotIn(List<String> values) {
            addCriterion("PresItemCode not in", values, "presitemcode");
            return (Criteria) this;
        }

        public Criteria andPresitemcodeBetween(String value1, String value2) {
            addCriterion("PresItemCode between", value1, value2, "presitemcode");
            return (Criteria) this;
        }

        public Criteria andPresitemcodeNotBetween(String value1, String value2) {
            addCriterion("PresItemCode not between", value1, value2, "presitemcode");
            return (Criteria) this;
        }

        public Criteria andPromitemcodeIsNull() {
            addCriterion("PromItemCode is null");
            return (Criteria) this;
        }

        public Criteria andPromitemcodeIsNotNull() {
            addCriterion("PromItemCode is not null");
            return (Criteria) this;
        }

        public Criteria andPromitemcodeEqualTo(String value) {
            addCriterion("PromItemCode =", value, "promitemcode");
            return (Criteria) this;
        }

        public Criteria andPromitemcodeNotEqualTo(String value) {
            addCriterion("PromItemCode <>", value, "promitemcode");
            return (Criteria) this;
        }

        public Criteria andPromitemcodeGreaterThan(String value) {
            addCriterion("PromItemCode >", value, "promitemcode");
            return (Criteria) this;
        }

        public Criteria andPromitemcodeGreaterThanOrEqualTo(String value) {
            addCriterion("PromItemCode >=", value, "promitemcode");
            return (Criteria) this;
        }

        public Criteria andPromitemcodeLessThan(String value) {
            addCriterion("PromItemCode <", value, "promitemcode");
            return (Criteria) this;
        }

        public Criteria andPromitemcodeLessThanOrEqualTo(String value) {
            addCriterion("PromItemCode <=", value, "promitemcode");
            return (Criteria) this;
        }

        public Criteria andPromitemcodeLike(String value) {
            addCriterion("PromItemCode like", value, "promitemcode");
            return (Criteria) this;
        }

        public Criteria andPromitemcodeNotLike(String value) {
            addCriterion("PromItemCode not like", value, "promitemcode");
            return (Criteria) this;
        }

        public Criteria andPromitemcodeIn(List<String> values) {
            addCriterion("PromItemCode in", values, "promitemcode");
            return (Criteria) this;
        }

        public Criteria andPromitemcodeNotIn(List<String> values) {
            addCriterion("PromItemCode not in", values, "promitemcode");
            return (Criteria) this;
        }

        public Criteria andPromitemcodeBetween(String value1, String value2) {
            addCriterion("PromItemCode between", value1, value2, "promitemcode");
            return (Criteria) this;
        }

        public Criteria andPromitemcodeNotBetween(String value1, String value2) {
            addCriterion("PromItemCode not between", value1, value2, "promitemcode");
            return (Criteria) this;
        }

        public Criteria andDistpriIsNull() {
            addCriterion("DistPRI is null");
            return (Criteria) this;
        }

        public Criteria andDistpriIsNotNull() {
            addCriterion("DistPRI is not null");
            return (Criteria) this;
        }

        public Criteria andDistpriEqualTo(Integer value) {
            addCriterion("DistPRI =", value, "distpri");
            return (Criteria) this;
        }

        public Criteria andDistpriNotEqualTo(Integer value) {
            addCriterion("DistPRI <>", value, "distpri");
            return (Criteria) this;
        }

        public Criteria andDistpriGreaterThan(Integer value) {
            addCriterion("DistPRI >", value, "distpri");
            return (Criteria) this;
        }

        public Criteria andDistpriGreaterThanOrEqualTo(Integer value) {
            addCriterion("DistPRI >=", value, "distpri");
            return (Criteria) this;
        }

        public Criteria andDistpriLessThan(Integer value) {
            addCriterion("DistPRI <", value, "distpri");
            return (Criteria) this;
        }

        public Criteria andDistpriLessThanOrEqualTo(Integer value) {
            addCriterion("DistPRI <=", value, "distpri");
            return (Criteria) this;
        }

        public Criteria andDistpriIn(List<Integer> values) {
            addCriterion("DistPRI in", values, "distpri");
            return (Criteria) this;
        }

        public Criteria andDistpriNotIn(List<Integer> values) {
            addCriterion("DistPRI not in", values, "distpri");
            return (Criteria) this;
        }

        public Criteria andDistpriBetween(Integer value1, Integer value2) {
            addCriterion("DistPRI between", value1, value2, "distpri");
            return (Criteria) this;
        }

        public Criteria andDistpriNotBetween(Integer value1, Integer value2) {
            addCriterion("DistPRI not between", value1, value2, "distpri");
            return (Criteria) this;
        }

        public Criteria andPromdistpriIsNull() {
            addCriterion("PromDistPRI is null");
            return (Criteria) this;
        }

        public Criteria andPromdistpriIsNotNull() {
            addCriterion("PromDistPRI is not null");
            return (Criteria) this;
        }

        public Criteria andPromdistpriEqualTo(Integer value) {
            addCriterion("PromDistPRI =", value, "promdistpri");
            return (Criteria) this;
        }

        public Criteria andPromdistpriNotEqualTo(Integer value) {
            addCriterion("PromDistPRI <>", value, "promdistpri");
            return (Criteria) this;
        }

        public Criteria andPromdistpriGreaterThan(Integer value) {
            addCriterion("PromDistPRI >", value, "promdistpri");
            return (Criteria) this;
        }

        public Criteria andPromdistpriGreaterThanOrEqualTo(Integer value) {
            addCriterion("PromDistPRI >=", value, "promdistpri");
            return (Criteria) this;
        }

        public Criteria andPromdistpriLessThan(Integer value) {
            addCriterion("PromDistPRI <", value, "promdistpri");
            return (Criteria) this;
        }

        public Criteria andPromdistpriLessThanOrEqualTo(Integer value) {
            addCriterion("PromDistPRI <=", value, "promdistpri");
            return (Criteria) this;
        }

        public Criteria andPromdistpriIn(List<Integer> values) {
            addCriterion("PromDistPRI in", values, "promdistpri");
            return (Criteria) this;
        }

        public Criteria andPromdistpriNotIn(List<Integer> values) {
            addCriterion("PromDistPRI not in", values, "promdistpri");
            return (Criteria) this;
        }

        public Criteria andPromdistpriBetween(Integer value1, Integer value2) {
            addCriterion("PromDistPRI between", value1, value2, "promdistpri");
            return (Criteria) this;
        }

        public Criteria andPromdistpriNotBetween(Integer value1, Integer value2) {
            addCriterion("PromDistPRI not between", value1, value2, "promdistpri");
            return (Criteria) this;
        }

        public Criteria andMinpriceIsNull() {
            addCriterion("MinPrice is null");
            return (Criteria) this;
        }

        public Criteria andMinpriceIsNotNull() {
            addCriterion("MinPrice is not null");
            return (Criteria) this;
        }

        public Criteria andMinpriceEqualTo(BigDecimal value) {
            addCriterion("MinPrice =", value, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceNotEqualTo(BigDecimal value) {
            addCriterion("MinPrice <>", value, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceGreaterThan(BigDecimal value) {
            addCriterion("MinPrice >", value, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("MinPrice >=", value, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceLessThan(BigDecimal value) {
            addCriterion("MinPrice <", value, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("MinPrice <=", value, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceIn(List<BigDecimal> values) {
            addCriterion("MinPrice in", values, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceNotIn(List<BigDecimal> values) {
            addCriterion("MinPrice not in", values, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("MinPrice between", value1, value2, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("MinPrice not between", value1, value2, "minprice");
            return (Criteria) this;
        }

        public Criteria andSupplydiscIsNull() {
            addCriterion("SupplyDisc is null");
            return (Criteria) this;
        }

        public Criteria andSupplydiscIsNotNull() {
            addCriterion("SupplyDisc is not null");
            return (Criteria) this;
        }

        public Criteria andSupplydiscEqualTo(BigDecimal value) {
            addCriterion("SupplyDisc =", value, "supplydisc");
            return (Criteria) this;
        }

        public Criteria andSupplydiscNotEqualTo(BigDecimal value) {
            addCriterion("SupplyDisc <>", value, "supplydisc");
            return (Criteria) this;
        }

        public Criteria andSupplydiscGreaterThan(BigDecimal value) {
            addCriterion("SupplyDisc >", value, "supplydisc");
            return (Criteria) this;
        }

        public Criteria andSupplydiscGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("SupplyDisc >=", value, "supplydisc");
            return (Criteria) this;
        }

        public Criteria andSupplydiscLessThan(BigDecimal value) {
            addCriterion("SupplyDisc <", value, "supplydisc");
            return (Criteria) this;
        }

        public Criteria andSupplydiscLessThanOrEqualTo(BigDecimal value) {
            addCriterion("SupplyDisc <=", value, "supplydisc");
            return (Criteria) this;
        }

        public Criteria andSupplydiscIn(List<BigDecimal> values) {
            addCriterion("SupplyDisc in", values, "supplydisc");
            return (Criteria) this;
        }

        public Criteria andSupplydiscNotIn(List<BigDecimal> values) {
            addCriterion("SupplyDisc not in", values, "supplydisc");
            return (Criteria) this;
        }

        public Criteria andSupplydiscBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("SupplyDisc between", value1, value2, "supplydisc");
            return (Criteria) this;
        }

        public Criteria andSupplydiscNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("SupplyDisc not between", value1, value2, "supplydisc");
            return (Criteria) this;
        }

        public Criteria andVendordistrateIsNull() {
            addCriterion("VendorDistRate is null");
            return (Criteria) this;
        }

        public Criteria andVendordistrateIsNotNull() {
            addCriterion("VendorDistRate is not null");
            return (Criteria) this;
        }

        public Criteria andVendordistrateEqualTo(BigDecimal value) {
            addCriterion("VendorDistRate =", value, "vendordistrate");
            return (Criteria) this;
        }

        public Criteria andVendordistrateNotEqualTo(BigDecimal value) {
            addCriterion("VendorDistRate <>", value, "vendordistrate");
            return (Criteria) this;
        }

        public Criteria andVendordistrateGreaterThan(BigDecimal value) {
            addCriterion("VendorDistRate >", value, "vendordistrate");
            return (Criteria) this;
        }

        public Criteria andVendordistrateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("VendorDistRate >=", value, "vendordistrate");
            return (Criteria) this;
        }

        public Criteria andVendordistrateLessThan(BigDecimal value) {
            addCriterion("VendorDistRate <", value, "vendordistrate");
            return (Criteria) this;
        }

        public Criteria andVendordistrateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("VendorDistRate <=", value, "vendordistrate");
            return (Criteria) this;
        }

        public Criteria andVendordistrateIn(List<BigDecimal> values) {
            addCriterion("VendorDistRate in", values, "vendordistrate");
            return (Criteria) this;
        }

        public Criteria andVendordistrateNotIn(List<BigDecimal> values) {
            addCriterion("VendorDistRate not in", values, "vendordistrate");
            return (Criteria) this;
        }

        public Criteria andVendordistrateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("VendorDistRate between", value1, value2, "vendordistrate");
            return (Criteria) this;
        }

        public Criteria andVendordistrateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("VendorDistRate not between", value1, value2, "vendordistrate");
            return (Criteria) this;
        }

        public Criteria andWastingrateIsNull() {
            addCriterion("WastingRate is null");
            return (Criteria) this;
        }

        public Criteria andWastingrateIsNotNull() {
            addCriterion("WastingRate is not null");
            return (Criteria) this;
        }

        public Criteria andWastingrateEqualTo(BigDecimal value) {
            addCriterion("WastingRate =", value, "wastingrate");
            return (Criteria) this;
        }

        public Criteria andWastingrateNotEqualTo(BigDecimal value) {
            addCriterion("WastingRate <>", value, "wastingrate");
            return (Criteria) this;
        }

        public Criteria andWastingrateGreaterThan(BigDecimal value) {
            addCriterion("WastingRate >", value, "wastingrate");
            return (Criteria) this;
        }

        public Criteria andWastingrateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("WastingRate >=", value, "wastingrate");
            return (Criteria) this;
        }

        public Criteria andWastingrateLessThan(BigDecimal value) {
            addCriterion("WastingRate <", value, "wastingrate");
            return (Criteria) this;
        }

        public Criteria andWastingrateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("WastingRate <=", value, "wastingrate");
            return (Criteria) this;
        }

        public Criteria andWastingrateIn(List<BigDecimal> values) {
            addCriterion("WastingRate in", values, "wastingrate");
            return (Criteria) this;
        }

        public Criteria andWastingrateNotIn(List<BigDecimal> values) {
            addCriterion("WastingRate not in", values, "wastingrate");
            return (Criteria) this;
        }

        public Criteria andWastingrateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("WastingRate between", value1, value2, "wastingrate");
            return (Criteria) this;
        }

        public Criteria andWastingrateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("WastingRate not between", value1, value2, "wastingrate");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}